package skyhyun;

import java.util.Scanner;

public class J10_DoWhile {
	
	// do-while
	// while 문과 유사한 반복문
	// 단, while 문은 조건을 먼저 검사하고 조건이 참인 경우에만 반복문을 실행하지만
	// do-while 문은 먼저 반복문을 실행하고 나중에 조건식을 검사함
	
	public static void main(String[] main) {
		// while vs do-while
		
		int i = 10;
		while (i >10) {
			System.out.println("이글이 보이나요??");
		}
		
		do {
			System.out.println("이글이 보이나요??");
		} while(i > 10);
		
		// 문제 1. 임의의 난수 5개를 출력
		// 난수 출력시 Math 클래스의 random 메서드를 이용
		int j = 1;
		do {
			System.out.println(Math.random());
			System.out.println(Math.random() * 10);
			System.out.println((int)(Math.random() * 10));
			System.out.println((int)(Math.random() * 10) + 1);
			++j;
		} while(j <= 5);
		
		// 문제 2. 컴퓨터 속마음 알아내기
		// 컴퓨터가 생성한 난수를 알아 맞추는 프로그램
		// 1) 사용자가 입력한 값이 난수보다 크면 "크다" 출력
		// 2) 사용자가 입력한 값이 난수보다 작으면 "작다" 출력
		// 3) 사용자가 입력한 값이 난수와 같으면 "같다" 출력
		
		
		// 프로그램 실행 순서
		// 컴퓨터가 난수를 생성한다.
		// 사용자에게 값을 하나 입력 받음
		// 난수와 입력받은 값을 비교하고 결과 출력
		// 프로그램 종료
		
		// v1
		int yourkey;
		int mykey;
		
		yourkey = (int)(Math.random() * 10) + 1;
		
		Scanner sc = new Scanner(System.in);
							// Scanner : 간당한 문자 입력을 위해 사용하는 클래스
							// System.in : 시스템에 장착된 입력도구를 의미 - 기본적으로 키보드
							// System.out : 시스템에 장착된 출력도구를 의미 - 기본적으로 모니터
		
		do {
			System.out.print("숫자를 입력하시오(1-10) : ");
			mykey = sc.nextInt();
			if (mykey <= 0 || mykey > 10) {
				System.out.println("숫자를 잘못 입력하셨습니다.");
			} else { 
				if(mykey > yourkey) {
					System.out.println("입력하신 숫자가 더 큽니다.");
				} else if(mykey < yourkey) {
					System.out.println("입력하신 숫자가 더 작습니다.");
				} else if(mykey == yourkey) {
					System.out.println("빙고!! 정답입니다!!");
					break;
				}
			}
		} while (true);
	
	System.out.println("정답 : " + yourkey);
	
	} // main

} // class
